#ifndef CINITGL_H
#define CINITGL_H


class CInitGL
{
    protected:
    static CInitGL *instance;



    public:
        CInitGL(){};
        static void setInstance(CInitGL * framework);

        static void DisplayWrapper(float);
        static void runWrapper();
    static void InitWrap(int Width,int Height);
    static void FancyRotateWrap(void);
    static void DrawGLSceneWrap (void);
    static void ReSizeGLSceneWrap(int Width, int Height);
    static void KeyPressedWrap(unsigned char key, int x, int y);
    static void SpecialKeyWrap(int key, int x, int y);
        void StartInitGL(int argc, char *argv[]);


    void run(){};
	virtual void display(float dTime){};
	virtual void Init(int Width,int Height);
	virtual void FancyRotate(void);
	virtual void DrawGLScene (void);
	virtual void ReSizeGLScene(int Width, int Height);
	virtual void keyboard(unsigned char key, int x, int y);
	virtual void keyboardUp(unsigned char key, int x, int y){};
	virtual void specialKeyboard(int key, int x, int y);



	  float rtri;
	  float depth,Movex,Movey;
	  float xpos,ypos,zpos,xrot,yrot,angle;
	  float positionz[10];
	  float positionx[10];
	  int window;
};

#endif
